/**
 * related to list.ui
 * 
 * @Author : chenglm
 * @Timestamp : 2016-07-15
 */
var page = sm("do_Page");
var app = sm("do_App");
var hashdata = mm("do_HashData");
var rootview = ui("$");
var nf = sm("do_Notification");
var common = require("common");
var orderUtil = require("url/order");
var qqHttp = require("helper/http");
var do_ListView_order = ui("do_ListView_order");
var listdata = mm("do_ListData");
do_ListView_order.bindItems(listdata);
var noData = [{"template":1,"labelContent":"您还没有订单"}];
var pageNum = 1, totalPages = 1;

//andriod返回键
page.on("back", function() {
	app.closePage({fromPage:"order_list"});
});

var headerAout = ui("do_ALayout_header");
var addheader = headerAout.add("header", "source://view/reuse/header.ui", 0, 0);
//左上角-返回
var headerLeft = ui(addheader+".headerLeft");
headerLeft.on("touch", function() {
	app.closePage({fromPage:"order_list"});
});
var header = ui("header");
header.bindData(hashdata);
hashdata.addData({
    "labelTitle" : ""
})
header.refreshData();

var url = "";
//页面装载完成后，开始初始化工作
page.on("loaded", function(){
	var param = page.getData();
	var labelTitle = "";
	if (param == 0) {
		labelTitle = "待付款";
		url = orderUtil.url.base.waitPayPage;
	} else if (param == 1) {
		labelTitle = "待发货";
		url = orderUtil.url.base.waitSendPage;
	} else if (param == 2) {
		labelTitle = "待收货";
		url = orderUtil.url.base.waitReceiptPage;
	} else if (param == 3) {
		labelTitle = "待退款";
		url = orderUtil.url.base.waitRefundPage;
	}
	hashdata.addData({
	    "labelTitle" : labelTitle
	})
	header.refreshData();
	refreshAllData(url);
});

page.on("result", function(data) {
	refreshAllData();
});

//刷新数据
function refreshAllData(){
	pageNum = 1;
	qqHttp.post(url, {page:pageNum}, function(data) {
		//deviceone.print(JSON.stringify(data));
		totalPages = data.page.totalPages;
		do_ListView_order.rebound();
		listdata.removeAll();
		if (data.page.content.length) {
			img_domain = data.page.content[0].fileDomain;
			listdata.addData(data.page.content);
		}
		else{
			listdata.addData(noData);
		}
		do_ListView_order.bindItems(listdata);
		do_ListView_order.refreshItems();
	})
}

function getNextPageData(){
	pageNum++;
	if (pageNum <= totalPages) {
		qqHttp.post(url, {page:pageNum}, function(data) {
			if (data.page.content.length > 0) {
				img_domain = data.page.content[0].fileDomain;
			}
			totalPages = data.page.totalPages;
			listdata.addData(data.page.content);
			do_ListView_order.rebound();
			do_ListView_order.refreshItems();
		})
	} else {
		nf.toast("已是最后一页");
		do_ListView_order.rebound();
		do_ListView_order.refreshItems();
	}
}

//下拉列表，刷新数据
do_ListView_order.on("pull", function(data){
	//其中state=0：表示开始下拉headerview，；state=1：表示下拉headerview超过headerview的高度，触发一次这个事件；state=2：下拉超过一定值，触发state=1事件后，松手会触发一次这个事件，数据加载完后需要调用rebound方法让header复位
	if (data.state == 2){
		refreshAllData();
	}
});

//上拉列表，翻页数据
do_ListView_order.on("push", function(data){
	//其中state=0：表示开始上推headerview，；state=1：表示上推headerview超过headerview的高度，触发一次这个事件；state=2：上推超过一定值，触发state=1事件后，松手会触发一次这个事件，数据加载完后需要调用rebound方法让header复位
	if (data.state == 2){	
		getNextPageData();
	}
});
